package com.vader.admin.entity.DO;

import cn.hutool.core.bean.BeanUtil;
import com.vader.admin.entity.Query.BaseTaskRecordQuery;

import java.io.Serializable;

/**
 * 活动参加记录表(BaseTaskRecord)实体类
 *
 * @author Vader
 * @since 2021-10-06 12:46:39
 */
public class BaseTaskRecord implements Serializable {
    private static final long serialVersionUID = -23152571615434691L;
    /**
     * 雪花主键
     */
    private Long id;
    /**
     * 活动id
     */
    private Long taskId;
    /**
     * 活动类型：0航海，1生财夜话，2线下见面会
     */
    private Integer taskType;
    /**
     * 人员id
     */
    private Long uid;
    /**
     * 参与状态：0-报名未参加，1-报名参加
     */
    private Integer joinStatus;
    /**
     * 活动扮演角色
     */
    private Integer joinType;
    /**
     * 活动中获得奖励
     */
    private String attachment;
    /**
     * 创建时间
     */
    private Long createAt;
    /**
     * 修改时间
     */
    private Long updateAt;

    public static BaseTaskRecord from(BaseTaskRecordQuery baseTaskRecordQuery) {
        BaseTaskRecord baseTaskRecord = new BaseTaskRecord();
        BeanUtil.copyProperties(baseTaskRecordQuery,baseTaskRecord);
        return baseTaskRecord;
    }


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getTaskId() {
        return taskId;
    }

    public void setTaskId(Long taskId) {
        this.taskId = taskId;
    }

    public Integer getTaskType() {
        return taskType;
    }

    public void setTaskType(Integer taskType) {
        this.taskType = taskType;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public Integer getJoinStatus() {
        return joinStatus;
    }

    public void setJoinStatus(Integer joinStatus) {
        this.joinStatus = joinStatus;
    }

    public Integer getJoinType() {
        return joinType;
    }

    public void setJoinType(Integer joinType) {
        this.joinType = joinType;
    }

    public String getAttachment() {
        return attachment;
    }

    public void setAttachment(String attachment) {
        this.attachment = attachment;
    }

    public Long getCreateAt() {
        return createAt;
    }

    public void setCreateAt(Long createAt) {
        this.createAt = createAt;
    }

    public Long getUpdateAt() {
        return updateAt;
    }

    public void setUpdateAt(Long updateAt) {
        this.updateAt = updateAt;
    }

}

